﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using Entidad;

namespace Dao
{
    public class SeguridadDao
    {
       
        public SqlCommand cmd = new SqlCommand();
        public SqlDataAdapter adp = new SqlDataAdapter();
        private static SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["AcademicoConnectionString"].ConnectionString);
     
        public SeguridadDao()
        {
            //
            // TODO: Agregar aquí la lógica del constructor
            //
        }
        public Usuario ValidarUsuario(string tipo, int leg, string pass)
        {
            Usuario u = new Usuario();
            u.activo = false;
            string sql = "select * from " + tipo + " where legajo=@legajo and pass=@pass";
            cmd = new SqlCommand(sql, cn);
            cmd.Parameters.Add("@pass", SqlDbType.VarChar, 50).Value = pass;
            cmd.Parameters.Add("@legajo", SqlDbType.Int).Value = leg;
            try
            {
                cn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    u.nombre = dr["nombre"].ToString();
                    u.apellido = dr["apellido"].ToString();
                    u.legajo = (int) dr["legajo"];
                    u.tipoUsuario = tipo;
                    u.activo = true;
                    if (u.tipoUsuario == "Alumno")
                    {
                        u.codCarrera =(int) dr["codCarrera"];
                    }
                }
                dr.Close();
                cn.Close();
            }
            catch (SqlException ex)
            {
                if (cn.State == ConnectionState.Open)
                    cn.Close();
                throw new ApplicationException("Error al validar usuario. \n Problema:" + ex.Message);
            }
            return u;
        }
    }
}